ci: remove Node.js 18 from CI workflow#1295
Conversation
|
If you're OK with this PR, then Node 18 jobs would need to be removed from the branch protection rules as being no longer required. If you want to keep testing against Node.js 18, then please feel free to close this PR without merging. |
|
We should also add 22 to the matrix |
|
Also we usually have engines in package.json but I'm surprised we don't have that. Also no tsconfig to change either so I guess this isn't a breaking change 🤔 |
I would have liked to do that, but it fails in Windows - see https://github.com/MikeMcC399/ncc/actions/runs/18814605371. That's why I suggested in the OP to address Node.js 22 (and 24, which is supposed to transition to LTS tomorrow) in a separate PR. |
|
I think its fine to do it in a separate PR but updating the checks is painful since we need to have IT approve and its only for a short window. So being able to remove 18 required checks and add 22 checks at the same time would be ideal. |
I understand the issue, however I don't any experience in this repo about the interactions between dependencies, node-gyp and Python versions, so at this point I don't know if I would be able to get tests to pass on Node.js 22 on Windows. What I could offer would be to add Node.js 22 with an exclusion for Windows tests. If you think that would be acceptable, then I would submit a new PR dropping Node.js 18 and adding Node.js 22 for Ubuntu and macOS only and then close this one. |
|
I would prefer to have windows passing, otherwise we can't say that ncc works with node@22 I'm pretty sure the github docs recommend ncc as the default way to create github actions so there is a wide audience. |
I'll see if I can solve the issue with Node.js 22 and Windows, however that may be beyond my skill-set. It may even be beyond what is possible with current dependencies.
The example repo https://github.com/actions/javascript-action is now recommending This was a change made through actions/javascript-action#434, merged in Jan 2025. I would however expect that many existing JavaScript GitHub Actions are still using |
|
Closing, as dropping Node.js 18 without adding Node.js 22 was not acceptable. |
|
I made slight progress after I found that updating I have come to realize that I really don't have the background, experience and understanding to make changes in this repo with confidence, so I've opened #1297 as a place-holder, and hopefully somebody with related experience will be able to move this forward. |
Situation
The CI workflow .github/workflows/ci.yml currently tests against Node.js 18 and 20.
Referring to the Node.js release schedule Node.js 18 has transitioned to end-of-life:
18.xChange
For the CI workflow .github/workflows/ci.yml:
18.x20.xNode.js 22 and 24 are not considered in this PR, since the workflow fails when attempting to use these versions. Any enhancement made to address workflow compatibility would need to be made in a separate PR.